package xyz.xtt.exchange.entity;

import java.io.Serializable;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 资产上下架操作表
 * </p>
 *
 * @author author
 * @since 2025-02-18
 */
@Builder
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tbl_asset_user_log")
@ApiModel(value = "TblAssetUserLog对象", description = "资产上下架操作表")
public class TblAssetUserLog implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "主键")
	@TableId(value = "id", type = IdType.AUTO)
	private Long id;

	@ApiModelProperty(value = "父级区划id")
	private Long assetId;

	@ApiModelProperty(value = "动作类型1上架2下架")
	private Integer opType;

	@ApiModelProperty(value = "之前价格")
	private BigDecimal beforePrice;

	@ApiModelProperty(value = "之前指导价格")
	private BigDecimal beforeGuidePrice;

	@ApiModelProperty(value = "之前折扣")
	private BigDecimal beforeDiscount;

	@ApiModelProperty(value = "之前预售开始")
	private Long beforePresellStart;

	@ApiModelProperty(value = "之前预售结束")
	private Long beforePresellEnd;

	@ApiModelProperty(value = "之前是否可公开可见")
	private Integer beforePubliclyVisible;

	@ApiModelProperty(value = "当前价格")
	private BigDecimal currPrice;

	@ApiModelProperty(value = "当前指导价格")
	private BigDecimal currGuidePrice;

	@ApiModelProperty(value = "当前折扣")
	private BigDecimal currDiscount;

	@ApiModelProperty(value = "当前预售开始")
	private Long currPresellStart;

	@ApiModelProperty(value = "当前预售结束")
	private Long currPresellEnd;

	@ApiModelProperty(value = "当前是否可公开可见")
	private Integer currPubliclyVisible;

	@ApiModelProperty(value = "公示期开始")
	private Long publicityPeriodStart;

	@ApiModelProperty(value = "公示期结束")
	private Long publicityPeriodEnd;

	@ApiModelProperty(value = "逻辑删除标识 0：未删除 1：已删除")
	private Boolean isDel;

	@ApiModelProperty(value = "操作人appuid")
	private Long operateUid;

	@ApiModelProperty(value = "创建时间")
	private Long createTime;
	@ApiModelProperty(value = "公示期天数")
	private Long publicityPeriodDay;

	@ApiModelProperty(value = "是否同意协议")
	private Integer ifAgreed;

}
